﻿using VIA.Integration.Domain;
using VIA.Integration.Domain.Production;

namespace VIA.SiMoJi.Domain.Vision
{
    public class Product : ProductBase
    {
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult1 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult2 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult3 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult4 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult5 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult6 { get; set; } = new();
        [QualityFactor]
        public BottomDuiWeiAlgorithmResult JawDuiWeiResult7 { get; set; } = new(); 
        public Product(string barcode, long index) : base(barcode, index)
        {
        }
    }

    public class FeedTrayProduct : ProductBase
    {
        [QualityFactor]
        public ImageAlgorithmResult TopImageAlgorithmResult { get; set; }
        public FeedTrayProduct(string barcode, long index) : base(barcode, index)
        {
        }
    }

    public class ProductPart
    {
        public bool IsUseSiMo1 { get; set; }
        public int Col { get; set; }
        public int Jaw { get; set; }
        public ProductPart(bool isUseSiMo1, int col,int jaw)
        {
            IsUseSiMo1 = isUseSiMo1;
            Col = col;
            Jaw = jaw;
        }
    }
}
